<!DOCTYPE html>
<title>Test that setting MediaSession event handler should notify the service</title>
<script src=/resources/testharness.js></script>
<script src="/resources/testharnessreport.js"></script>
<script>

[
  "play",
  "pause",
  "previoustrack",
  "nexttrack",
  "seekbackward",
  "seekforward",
  "stop",
  "seekto",
  "skipad",
  "togglemicrophone",
  "togglecamera",
  "hangup",
  "previousslide",
  "nextslide",
  "enterpictureinpicture",
].forEach((action) =>
  test((t) => {
    window.navigator.mediaSession.setActionHandler(action, null);
  }, `Test that setActionHandler("${action}") succeeds`)
);

test(function(t) {
  assert_throws_js(
      TypeError,
      _ => { window.navigator.mediaSession.setActionHandler("invalid", null); });
}, "Test that setActionHandler() throws exception for unsupported actions");

</script>
